The file system structure for optical disk storage devices generally conforms to the ISO 9660 standard defined by the International Standards Organization (ISO). This standard file system is recognized by most operating systems, and disks using it can be read by any conforming operating system. An ISO 9660 file system may exist on a physical CDROM drive, a physical DVDROM drive, or it may exist as an “ISO image” (an ISO image is an image, for example, a disk image, of an ISO 9660 file system) on local storage associated with a local computer or on storage remotely accessible over a network.
As is well known: (a) virtual machines (VMs), together with their “guest” operating systems and applications, run on a host computer using virtualization software such as ESX from VMWARE®, Inc.; (b) VMs can have “virtual” disk drives, and VMs can also have a virtual CDROM drive or a virtual DVDROM drive; (c) VMs can access ISO 9660 file systems; and (d) a virtual CDROM drive or a virtual DVDROM drive can be backed by: (i) a physical CDROM drive or a physical DVDROM drive, respectively, connected to the host computer, or (ii) an ISO image located either locally on the host computer or an ISO image that is remotely accessible over a network. Attaching a remotely accessible ISO image can be useful in that it provides access to a remotely accessible read-only file system without requiring a VM to have network connections enabled. In such a case, the remotely accessible ISO image is reached via Virtual Machine Extensions (VMX) in virtualization software and the host computer's network connection (VMX is a set of drivers in virtualization software that emulate the functionality of devices for a virtual machine). As a result, the remote file system appears to the VM to be a local file system, even if no network connections are enabled on the VM.
To create an ISO image from a set of files, all of them must be copied. This can be time consuming for sets of files using large amounts of data storage. This can be further problematic in applications where it is necessary to maintain more than one complete ISO image. For example, an ISO image may represent a set of files intended for downloading to many machines. New versions of the files may become available before all users have downloaded the previous versions. Thus, if an old ISO image is in use, the new files cannot be written to the old ISO image, and a new ISO image must be created using some old versions and the new versions. As a result, in addition to being time consuming, the creation of complete ISO images may require large amounts of data storage.